[PULL REQUEST] minor md updates for 2.6.34

Hi Linus,

Yes, I know I missed the boat, and I won't lose any sleep if this
doesn't get accepted, but here are a few minor improvements that I
would rather were in than not.

I have another bugfix coming (relating to merge_bvec_fn handling) but
I'm not confident I have that right yet so it'll some later as a
separate 'bugfix'.

Thanks,
NeilBrown


The following changes since commit 25cf84cf377c0aae5dbcf937ea89bc7893db5176:
Linus Torvalds (1):
Merge git://git.kernel.org/.../amit/virtio-console

are available in the git repository at:

git://neil.brown.name/md/ for-linus

H Hartley Sweeten (1):
drivers/md: Remove unnecessary casts of void *

NeilBrown (1):
md: remove some dead fields from mddev_s

Paul Clements (1):
md: expose max value of behind writes counter

drivers/md/bitmap.c | 37 ++++++++++++++++++++++++++++++++-----
drivers/md/bitmap.h | 1 +
drivers/md/faulty.c | 6 +++---
drivers/md/md.h | 3 ---
drivers/md/multipath.c | 2 +-
drivers/md/raid1.c | 8 ++++----
drivers/md/raid10.c | 8 ++++----
drivers/md/raid5.c | 10 +++++-----
8 files changed, 50 insertions(+), 25 deletions(-)
NeilBrown [ Di, 09 März 2010 23:52 ] [ ID #2034384 ]

tip: origin tree build failure (x86, 32-bit, allyesconfig)

* Neil Brown <neilb [at] suse.de> wrote:

> are available in the git repository at:
>
> git://neil.brown.name/md/ for-linus

( Note, i'm re-using this old MD pull request thread to report a bug in a pull
request you sent to Linus in the past two days. I havent found the pull
request nor the patch on lkml. )

All 32-bit x86 builds (x86, allyesconfig) that enable RAID are failing with
this build failure:

drivers/built-in.o: In function `raid5_compute_sector':
raid5.c:(.text+0x2e42ac): undefined reference to `__umoddi3'
raid5.c:(.text+0x2e42d8): undefined reference to `__umoddi3'
raid5.c:(.text+0x2e42ff): undefined reference to `__umoddi3'
raid5.c:(.text+0x2e4327): undefined reference to `__umoddi3'
raid5.c:(.text+0x2e4385): undefined reference to `__umoddi3'
drivers/built-in.o:raid5.c:(.text+0x2e43bc): more undefined references to `__umoddi3' follow

Caused by this commit:

35f2a59: md/raid5: allow for more than 2^31 chunks.

I've reverted the commit from -tip for now.

Thanks,

Ingo
Ingo Molnar [ Do, 22 April 2010 09:06 ] [ ID #2039823 ]

Re: tip: origin tree build failure (x86, 32-bit, allyesconfig)

On Thu, 22 Apr 2010, Ingo Molnar wrote:
>
> All 32-bit x86 builds (x86, allyesconfig) that enable RAID are failing with
> this build failure:
>
> drivers/built-in.o: In function `raid5_compute_sector':
> raid5.c:(.text+0x2e42ac): undefined reference to `__umoddi3'
> raid5.c:(.text+0x2e42d8): undefined reference to `__umoddi3'
> raid5.c:(.text+0x2e42ff): undefined reference to `__umoddi3'
> raid5.c:(.text+0x2e4327): undefined reference to `__umoddi3'
> raid5.c:(.text+0x2e4385): undefined reference to `__umoddi3'
> drivers/built-in.o:raid5.c:(.text+0x2e43bc): more undefined references to `__umoddi3' follow
>
> Caused by this commit:
>
> 35f2a59: md/raid5: allow for more than 2^31 chunks.

Gaah, yes.

How about just making it "unsigned long" instead of sector_t, and telling
people that if they have more than 2**32 chunks in their RAID array, they
should damn well use a 64-bit CPU.

The alternative, of course, is to use "sector_div()" everywhere. Neil?

Linus
Linus Torvalds [ Do, 22 April 2010 20:12 ] [ ID #2039836 ]

Re: tip: origin tree build failure (x86, 32-bit, allyesconfig)

On Thu, 22 Apr 2010 11:12:41 -0700 (PDT)
Linus Torvalds <torvalds [at] linux-foundation.org> wrote:

>
>
> On Thu, 22 Apr 2010, Ingo Molnar wrote:
> >
> > All 32-bit x86 builds (x86, allyesconfig) that enable RAID are failing with
> > this build failure:
> >
> > drivers/built-in.o: In function `raid5_compute_sector':
> > raid5.c:(.text+0x2e42ac): undefined reference to `__umoddi3'
> > raid5.c:(.text+0x2e42d8): undefined reference to `__umoddi3'
> > raid5.c:(.text+0x2e42ff): undefined reference to `__umoddi3'
> > raid5.c:(.text+0x2e4327): undefined reference to `__umoddi3'
> > raid5.c:(.text+0x2e4385): undefined reference to `__umoddi3'
> > drivers/built-in.o:raid5.c:(.text+0x2e43bc): more undefined references to `__umoddi3' follow
> >
> > Caused by this commit:
> >
> > 35f2a59: md/raid5: allow for more than 2^31 chunks.
>
> Gaah, yes.
>
> How about just making it "unsigned long" instead of sector_t, and telling
> people that if they have more than 2**32 chunks in their RAID array, they
> should damn well use a 64-bit CPU.
>
> The alternative, of course, is to use "sector_div()" everywhere. Neil?

Sorry, using sector_div everywhere is definitely the right thing to do.
Please pull one more patch from

git://neil.brown.name/md/ for-linus

Thanks,
NeilBrown
NeilBrown [ Do, 22 April 2010 23:13 ] [ ID #2039849 ]
Linux » gmane.linux.raid » [PULL REQUEST] minor md updates for 2.6.34

Vorheriges Thema: [PATCH 01/13] fix: memory leak in mdmon_pid()
Nächstes Thema: NFS and /dev/mdXpY